package com.crane.oss.school.dao;


import com.crane.oss.app.bean.resp.AppStudentInfo;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.crane.oss.school.bean.request.QueryStudentReq;
import com.crane.oss.school.bean.resp.StudentResp;
import com.crane.oss.school.bean.resp.StudentWebDto;
import com.crane.oss.school.model.Student;


/**
 * 学生信息表
 *
 * @author zhenxing.pi
 * @email ccsu123456@qq.com
 * @date 2022年03月26日 14时24分54秒
 */
@Mapper
public interface StudentDao extends BaseMapper<Student> {

    Page<StudentResp> selectPageStudentList(@Param("page") Page<StudentResp> page, @Param("request") QueryStudentReq request);

	int queryListTotal(Map<String, Object> paras);

	List<StudentWebDto> queryList(Map<String, Object> paras);

	StudentWebDto queryStudentDetails(Long studentId);

	int queryWaitingTotal(Map<String, Object> paras);

	/**
	 * 查询待入分层班的学生列表<只查行政班>
	 * @param paras
	 * @return
	 */
	List<Student> queryWaitingList(Map<String, Object> paras);

	List<AppStudentInfo> appQueryStudentInfo(Long appUserId);

	void updateAllStudentAge();

	void updateAllStudentOver(Long classId);
}
